EN FR
EN FR


Section: Scientific Foundations

Embedded Operating Systems

We focus our activities on “adaptability” and on “connectivity” of embedded platforms dedicated to POPS. From then on, our researches have evolved around the smart card. In fact, in the nineties (birth date of POPS research group) smart card was the only valuable and industrially deployed POPS. Smart card integration in database management systems, smart card integration in Corba (using the Card Object Adapter), open platform for smart card (the first smart card virtual machine), have been milestones of the POPS research. More recently, we have focused our attention (according to our industrial inputs) on embedded operating system techniques, enabling “on-card” type checking and bytecode compression. Today, smart card manufacturers and other emerging POPS manufacturers have to deal with new technological 'lock-in' inside and outside the mobile object. Dedicated operating systems are now powerful enough to run dynamically downloaded applications in a safe way. Typically, Java Card loads and runs a Java-like bytecode. Nevertheless, “Java-like” means “non-Java”. Embedded virtual machines do not support standard abstractions. And so, Java applications cannot be deployed in a limited embedded system. On the other hand, embedded applications do not limit their needs to the Java APIs. To overcome these limitations, we will focus on two complementary studies:

  1. Firstly we study a new architectural way to embed a Java virtual machine. Conventional virtual machines are not operating systems but they overlap the abstractions proposed by the system. We plan to define a Java virtual machine designed to be the operating system (the virtual machine will manage the hardware itself).

  2. Java is one of the possible hardware abstractions. However different applications require different abstractions: file-system, database systems, and so on. Camille OS is a smart card Exo-kernel enabling the download of different hardware abstractions in a safe way. In this way Camille ensures POPS “adaptability” to the applications requirements. Nevertheless some critical system extensions (enhanced IO protocols for example) need additional guaranties: real-time properties and hardware resources control.